RLQ analysis

Prepare data

When preparing palm traits for analysis, I had to remove several variables that contained NAs for our palm species. Also, I removed the descriptive traits about the fruit, and the variable “FruitShape” because it has blank values.

Run RLQ analysis and plot data

To successfully run this, I had to remove Habitat type from our environmental variables. The problem might be the naming convention. Sarah, can you make three letter codes for these?

That’s unreadable, plotting as seperate.

Summary of RLQ analysis. How to interpret this?

## RLQ analysis
## 
## Class: rlq dudi
## Call: rlq(dudiR = acpR.aravo, dudiL = afcL.aravo, dudiQ = acpQ.aravo, 
##     scannf = FALSE)
## 
## Total inertia: 0.657
## 
## Eigenvalues:
##      Ax1      Ax2      Ax3      Ax4      Ax5 
## 0.300155 0.228303 0.083533 0.041707 0.001744 
## 
## Projected inertia (%):
##     Ax1     Ax2     Ax3     Ax4     Ax5 
## 45.6877 34.7508 12.7148  6.3484  0.2654 
## 
## Cumulative projected inertia (%):
##     Ax1   Ax1:2   Ax1:3   Ax1:4   Ax1:5 
##   45.69   80.44   93.15   99.50   99.77 
## 
## (Only 5 dimensions (out of 9) are shown)
## 
## 
## Eigenvalues decomposition:
##         eig     covar      sdR      sdQ      corr
## 1 0.3001551 0.5478641 1.034229 1.481707 0.3575146
## 2 0.2283026 0.4778102 1.084627 2.004471 0.2197734
## 
## Inertia & coinertia R (acpR.aravo):
##     inertia      max     ratio
## 1  1.069629 1.755539 0.6092881
## 12 2.246045 3.085130 0.7280229
## 
## Inertia & coinertia Q (acpQ.aravo):
##     inertia      max     ratio
## 1  2.195457 5.095305 0.4308784
## 12 6.213361 7.950625 0.7814933
## 
## Correlation L (afcL.aravo):
##        corr       max     ratio
## 1 0.3575146 0.9327084 0.3833080
## 2 0.2197734 0.8335977 0.2636445

Fourth-corner analysis

From tutorial: “Fourth-corner analysis can be used to test the associations between individual traits and environmental variables. To obtain a test with a correct type I error, results of model 2 (permutation of sites, i.e. rows) and 4 (permutation of species, i.e. columns) should be combined.”

 nrepet <- 999
 four.comb.aravo <- fourthcorner(p_env[,-10], p_species,
     p_traits, modeltype = 6, p.adjust.method.G = "none",
     p.adjust.method.D = "none", nrepet = nrepet)

Plotting the data: “Blue cells correspond to negative significant relationships while red cells correspond to positive significant relationships (this can be modified using the argument col).”

I used the D2 option when plotting, but others exist: stat=“D2”: the association is measured between the quantitative variable and each category separately. A correlation coefficient is used to indicate the strength of the association between the given category and the small or large values of the quantitative variable. stat=“G”: the association between the quantitative variable and the whole categorical variable is measured by a global statistic (F). stat=“D”: the association is estimated between the quantitative variable and each category separately by a measure of the within-group homogeneity. The strength of the association is indicated by the dispersion of the values of the quantitative variable for a given category.

To replot the data for multiple comparisons: “Now, we adjust p-values for multiple comparisons (here we used the fdr method using the p.adjust.4thcorner function).”

Combine both approaches

“First, a multivariate test can be applied to evaluate the global significance of the traits-environment relationships. This test is based on the total inertia of the RLQ analysis”

## class: krandtest lightkrandtest 
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6)
## 
## Number of tests:   2 
## 
## Adjustment method for multiple comparisons:   none 
## Permutation number:   999 
##      Test       Obs    Std.Obs   Alter Pvalue
## 1 Model 2 0.6569709 -0.1346780 greater  0.507
## 2 Model 4 0.6569709 -0.9536772 greater  0.829

The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:

Srlq <- fourthcorner2(p_env[,-10], p_species, p_traits,
     modeltype = 6, p.adjust.method.G = "fdr", nrepet = nrepet)
Srlq$trRLQ
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_env[, -10], tabL = p_species, tabQ = p_traits, 
##     modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
## 
## Observation: -8990.343 
## 
## Based on 999 replicates
## Simulated p-value: 0.822 
## Alternative hypothesis: greater 
## 
##       Std.Obs   Expectation      Variance 
## -9.206018e-01 -8.990088e+03  7.649906e-02

“Both approaches can be combined if RLQ scores are used to represent traits and environmental variables on a biplot. Then, significant associations revealed by the fourthcorner approach can be represented using segments (blue lines for negative associations, red lines for positive associations, see the argument col). Only traits and environmental variables that have at least one significant association are represented. Here, we apply this method using adjusted pvalues for multiple comparisons and a significant level α = 0.05.”

“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”

RLQ axes and traits

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6,      typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                             Test   Stat         Obs     Std.Obs     Alter
## 1                AxcR1 / Climb.0 Homog.  0.96134310  2.20116058      less
## 2                AxcR2 / Climb.0 Homog.  0.89121986 -0.53679743      less
## 3                AxcR1 / Climb.1 Homog.  0.03686797 -0.24848563      less
## 4                AxcR2 / Climb.1 Homog.  0.10785496  1.78642185      less
## 5                AxcR1 / Acaul.0 Homog.  1.00000000        <NA>      less
## 6                AxcR2 / Acaul.0 Homog.  1.00000000        <NA>      less
## 7                AxcR1 / Erect.0 Homog.  0.03686797 -0.24848563      less
## 8                AxcR2 / Erect.0 Homog.  0.10785496  1.78642185      less
## 9                AxcR1 / Erect.1 Homog.  0.96134310  2.20116058      less
## 10               AxcR2 / Erect.1 Homog.  0.89121986 -0.53679743      less
## 11               AxcR1 / StemS.0 Homog.  0.03698011 -0.82249690      less
## 12               AxcR2 / StemS.0 Homog.  0.10811460  1.69818917      less
## 13               AxcR1 / StemS.1 Homog.  0.48052421 -0.47715061      less
## 14               AxcR2 / StemS.1 Homog.  0.59926258  0.29260277      less
## 15               AxcR1 / StemS.2 Homog.  0.41908006  3.49481660      less
## 16               AxcR2 / StemS.2 Homog.  0.27599200  0.82078570      less
## 17               AxcR1 / StemA.0 Homog.  0.76595294  1.53669110      less
## 18               AxcR2 / StemA.0 Homog.  0.63295693 -1.43746503      less
## 19               AxcR1 / StemA.1 Homog.  0.20361638  0.26186245      less
## 20               AxcR2 / StemA.1 Homog.  0.32299828  0.83189141      less
## 21               AxcR1 / Leave.0 Homog.  0.72348658  2.13924819      less
## 22               AxcR2 / Leave.0 Homog.  0.52504761 -1.56755644      less
## 23               AxcR1 / Leave.1 Homog.  0.24149577  0.02111477      less
## 24               AxcR2 / Leave.1 Homog.  0.44244854  1.66729070      less
## 25       AxcR1 / MaxStemHeight_m      r  0.09149172  0.68994881 two-sided
## 26       AxcR2 / MaxStemHeight_m      r -0.14448147 -1.18998713 two-sided
## 27         AxcR1 / MaxStemDia_cm      r  0.08749172  0.67358979 two-sided
## 28         AxcR2 / MaxStemDia_cm      r -0.12934431 -1.06921687 two-sided
## 29          AxcR1 / Under.canopy Homog.  0.97761339  1.77069366      less
## 30          AxcR2 / Under.canopy Homog.  0.96901013  0.58548969      less
## 31     AxcR1 / Under.understorey Homog.  0.02065195 -0.45299627      less
## 32     AxcR2 / Under.understorey Homog.  0.03098774 -0.29627554      less
## 33 AxcR1 / AverageFruitLength_cm      r  0.24503760  1.89727497 two-sided
## 34 AxcR2 / AverageFruitLength_cm      r -0.12292261 -0.96520838 two-sided
## 35           AxcR1 / Fruit.large Homog.  0.42030052  2.10914139      less
## 36           AxcR2 / Fruit.large Homog.  0.51860246  2.78553943      less
## 37           AxcR1 / Fruit.small Homog.  0.55423824  2.73768704      less
## 38           AxcR2 / Fruit.small Homog.  0.46746559  1.25826119      less
## 39     AxcR1 / Consp.conspicuous Homog.  0.28302363 -1.35476992      less
## 40     AxcR2 / Consp.conspicuous Homog.  0.49950186  1.79562903      less
## 41         AxcR1 / Consp.cryptic Homog.  0.67206694  1.88678666      less
## 42         AxcR2 / Consp.cryptic Homog.  0.46811068 -0.15736019      less
##    Pvalue Pvalue.adj  
## 1   0.996          1  
## 2   0.261  0.8150625  
## 3    0.61  0.8150625  
## 4   0.946          1  
## 5       1          1  
## 6       1          1  
## 7    0.61  0.8150625  
## 8   0.946          1  
## 9   0.996          1  
## 10  0.261  0.8150625  
## 11  0.241  0.8150625  
## 12  0.942          1  
## 13  0.308  0.8150625  
## 14  0.584  0.8150625  
## 15  0.993          1  
## 16  0.833          1  
## 17  0.929          1  
## 18  0.099      0.693  
## 19  0.594  0.8150625  
## 20  0.811          1  
## 21  0.967          1  
## 22   0.07     0.6216  
## 23  0.538  0.8150625  
## 24  0.966          1  
## 25  0.527  0.8150625  
## 26  0.264  0.8150625  
## 27  0.524  0.8150625  
## 28  0.296  0.8150625  
## 29  0.973          1  
## 30  0.713          1  
## 31  0.504  0.8150625  
## 32  0.571  0.8150625  
## 33  0.046     0.6216  
## 34  0.366  0.8150625  
## 35  0.973          1  
## 36  0.993          1  
## 37  0.988          1  
## 38  0.911          1  
## 39  0.074     0.6216  
## 40  0.976          1  
## 41  0.944          1  
## 42  0.429  0.8150625  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

RLQ axes and environmental variables

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.aravo, nrepet = nrepet, modeltype = 6,      typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                          Test Stat          Obs     Std.Obs     Alter Pvalue
## 1        Canopy.Cover / AxcQ1    r -0.012420893 -0.08504096 two-sided  0.891
## 2  Understory.Density / AxcQ1    r -0.029892325 -0.28535590 two-sided  0.784
## 3         Leaf.Litter / AxcQ1    r  0.083803687  0.83347452 two-sided  0.432
## 4       Soil.Moisture / AxcQ1    r  0.122365689  1.10765079 two-sided  0.265
## 5                 Cec / AxcQ1    r  0.046971395  1.03900906 two-sided  0.333
## 6                 T50 / AxcQ1    r  0.009956983  0.17613818 two-sided  0.897
## 7                 T10 / AxcQ1    r  0.304644385  1.82411195 two-sided  0.079
## 8       Canopy.Height / AxcQ1    r -0.124070105 -1.03016040 two-sided  0.331
## 9           Elevation / AxcQ1    r  0.056259879  0.43232450 two-sided  0.687
## 10       Canopy.Cover / AxcQ2    r  0.014571724  0.12684783 two-sided  0.846
## 11 Understory.Density / AxcQ2    r -0.114617370 -1.15933364 two-sided   0.27
## 12        Leaf.Litter / AxcQ2    r  0.049781194  0.49259572 two-sided  0.636
## 13      Soil.Moisture / AxcQ2    r -0.068450849 -0.84961406 two-sided  0.419
## 14                Cec / AxcQ2    r  0.027732905  0.71951008 two-sided  0.499
## 15                T50 / AxcQ2    r  0.098808237  1.14865071 two-sided  0.219
## 16                T10 / AxcQ2    r -0.062682617 -0.36973774 two-sided  0.699
## 17      Canopy.Height / AxcQ2    r -0.090071839 -0.81666971 two-sided   0.48
## 18          Elevation / AxcQ2    r  0.117191890  0.95719518 two-sided  0.367
##           Pvalue.adj  
## 1              0.891  
## 2              0.882  
## 3  0.816545454545455  
## 4  0.777857142857143  
## 5  0.816545454545455  
## 6              0.897  
## 7              0.708  
## 8  0.816545454545455  
## 9  0.834352941176471  
## 10             0.891  
## 11 0.777857142857143  
## 12 0.834352941176471  
## 13 0.816545454545455  
## 14 0.816545454545455  
## 15 0.777857142857143  
## 16 0.834352941176471  
## 17 0.816545454545455  
## 18 0.816545454545455  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Results can be represented using a table with colors indicating significance :

Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)

RLQ/4th corner run 2 : Splitting all lifestage and points with some forest cover

Run RLQ/ FQ analysis for all lifestage types

That’s unreadable, plotting as separate.

## [1] "RLQ for juveniles"

## [1] "RLQ for adults"

Summary of RLQ analysis. How to interpret this?

## RLQ analysis
## 
## Class: rlq dudi
## Call: rlq(dudiR = Rjuv, dudiL = Ljuv, dudiQ = Qjuv, scannf = FALSE)
## 
## Total inertia: 1.429
## 
## Eigenvalues:
##      Ax1      Ax2      Ax3      Ax4      Ax5 
## 0.746537 0.500895 0.121014 0.054025 0.003262 
## 
## Projected inertia (%):
##     Ax1     Ax2     Ax3     Ax4     Ax5 
## 52.2481 35.0563  8.4695  3.7811  0.2283 
## 
## Cumulative projected inertia (%):
##     Ax1   Ax1:2   Ax1:3   Ax1:4   Ax1:5 
##   52.25   87.30   95.77   99.55   99.78 
## 
## (Only 5 dimensions (out of 9) are shown)
## 
## 
## Eigenvalues decomposition:
##         eig     covar      sdR      sdQ      corr
## 1 0.7465371 0.8640238 1.170836 1.785317 0.4133466
## 2 0.5008948 0.7077392 1.244773 1.691688 0.3360957
## 
## Inertia & coinertia R (Rjuv):
##     inertia      max     ratio
## 1  1.370856 1.858611 0.7375703
## 12 2.920316 3.464436 0.8429412
## 
## Inertia & coinertia Q (Qjuv):
##     inertia      max     ratio
## 1  3.187357 5.160919 0.6175949
## 12 6.049164 7.993775 0.7567344
## 
## Correlation L (Ljuv):
##        corr       max     ratio
## 1 0.4133466 0.9448971 0.4374514
## 2 0.3360957 0.9087471 0.3698452
## RLQ analysis
## 
## Class: rlq dudi
## Call: rlq(dudiR = Radu, dudiL = Ladu, dudiQ = Qadu, scannf = FALSE)
## 
## Total inertia: 1.04
## 
## Eigenvalues:
##      Ax1      Ax2      Ax3      Ax4      Ax5 
## 0.564979 0.338546 0.115397 0.015354 0.003838 
## 
## Projected inertia (%):
##     Ax1     Ax2     Ax3     Ax4     Ax5 
##  54.314  32.546  11.094   1.476   0.369 
## 
## Cumulative projected inertia (%):
##     Ax1   Ax1:2   Ax1:3   Ax1:4   Ax1:5 
##   54.31   86.86   97.95   99.43   99.80 
## 
## (Only 5 dimensions (out of 10) are shown)
## 
## 
## Eigenvalues decomposition:
##         eig     covar      sdR      sdQ      corr
## 1 0.5649794 0.7516511 1.317944 1.702729 0.3349451
## 2 0.3385457 0.5818468 1.128801 2.171484 0.2373747
## 
## Inertia & coinertia R (Radu):
##     inertia      max     ratio
## 1  1.736977 2.095715 0.8288231
## 12 3.011170 3.680365 0.8181714
## 
## Inertia & coinertia Q (Qadu):
##     inertia      max     ratio
## 1  2.899287 4.937157 0.5872382
## 12 7.614631 7.890549 0.9650318
## 
## Correlation L (Ladu):
##        corr       max     ratio
## 1 0.3349451 1.0000000 0.3349451
## 2 0.2373747 0.9128287 0.2600430

Fourth-corner analysis

## [1] "FQ for juveniles"

## [1] "FQ for adults"

With adjusted p-values

## [1] "FQ for Juveniles"
## [1] "FQ for Adults"

Combine both approaches

## class: krandtest lightkrandtest 
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6)
## 
## Number of tests:   2 
## 
## Adjustment method for multiple comparisons:   none 
## Permutation number:   999 
##      Test     Obs    Std.Obs   Alter Pvalue
## 1 Model 2 1.42883  0.1299938 greater  0.373
## 2 Model 4 1.42883 -0.2833431 greater  0.569

## class: krandtest lightkrandtest 
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6)
## 
## Number of tests:   2 
## 
## Adjustment method for multiple comparisons:   none 
## Permutation number:   999 
##      Test      Obs    Std.Obs   Alter Pvalue
## 1 Model 2 1.040218 14.1026397 greater  0.001
## 2 Model 4 1.040218 -0.1732769 greater  0.549

The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:

## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envFORCOVER, tabL = p_speciesJUV, tabQ = p_traits, 
##     modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
## 
## Observation: -8989.571 
## 
## Based on 848 replicates
## Simulated p-value: 0.5206125 
## Alternative hypothesis: greater 
## 
##       Std.Obs   Expectation      Variance 
##  3.635986e-01 -1.067521e+04  2.149238e+07
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envFORCOVER, tabL = p_speciesADU, tabQ = p_traits, 
##     modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
## 
## Observation: -8989.96 
## 
## Based on 999 replicates
## Simulated p-value: 0.469 
## Alternative hypothesis: greater 
## 
##       Std.Obs   Expectation      Variance 
##  3.555372e-01 -1.065493e+04  2.193028e+07
## [1] "juvenile"

## [1] "adult"

“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”

RLQ axes and traits

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6,      typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                             Test   Stat          Obs     Std.Obs     Alter
## 1                AxcR1 / Climb.0 Homog.  0.935408906  0.96730878      less
## 2                AxcR2 / Climb.0 Homog.  0.896219686 -0.46788626      less
## 3                AxcR1 / Climb.1 Homog.  0.062673284  0.07444970      less
## 4                AxcR2 / Climb.1 Homog.  0.100874152  0.87771669      less
## 5                AxcR1 / Acaul.0 Homog.  1.000000000        <NA>      less
## 6                AxcR2 / Acaul.0 Homog.  1.000000000        <NA>      less
## 7                AxcR1 / Erect.0 Homog.  0.062673284  0.07444970      less
## 8                AxcR2 / Erect.0 Homog.  0.100874152  0.87771669      less
## 9                AxcR1 / Erect.1 Homog.  0.935408906  0.96730878      less
## 10               AxcR2 / Erect.1 Homog.  0.896219686 -0.46788626      less
## 11               AxcR1 / StemS.0 Homog.  0.062673284 -0.42172090      less
## 12               AxcR2 / StemS.0 Homog.  0.100874152  0.87771669      less
## 13               AxcR1 / StemS.1 Homog.  0.434638318 -0.66069204      less
## 14               AxcR2 / StemS.1 Homog.  0.515663169 -0.21398743      less
## 15               AxcR1 / StemS.2 Homog.  0.336057240  1.95516021      less
## 16               AxcR2 / StemS.2 Homog.  0.379436083  2.91532672      less
## 17               AxcR1 / StemA.0 Homog.  0.823478093  2.21574440      less
## 18               AxcR2 / StemA.0 Homog.  0.594579406 -1.47389245      less
## 19               AxcR1 / StemA.1 Homog.  0.174538043  0.04400098      less
## 20               AxcR2 / StemA.1 Homog.  0.280158884  0.47985122      less
## 21               AxcR1 / Leave.0 Homog.  0.758100818  2.24583807      less
## 22               AxcR2 / Leave.0 Homog.  0.493674666 -1.56170756      less
## 23               AxcR1 / Leave.1 Homog.  0.237514667  0.04512235      less
## 24               AxcR2 / Leave.1 Homog.  0.419778917  1.50727468      less
## 25       AxcR1 / MaxStemHeight_m      r -0.210341823 -1.33485794 two-sided
## 26       AxcR2 / MaxStemHeight_m      r -0.077264855 -0.60188406 two-sided
## 27         AxcR1 / MaxStemDia_cm      r -0.214542329 -1.34534367 two-sided
## 28         AxcR2 / MaxStemDia_cm      r -0.059720466 -0.50256913 two-sided
## 29          AxcR1 / Under.canopy Homog.  0.980841113  0.92303525      less
## 30          AxcR2 / Under.canopy Homog.  0.982255001  1.08882504      less
## 31     AxcR1 / Under.understorey Homog.  0.017971110 -0.50703885      less
## 32     AxcR2 / Under.understorey Homog.  0.017628019 -0.52176153      less
## 33 AxcR1 / AverageFruitLength_cm      r -0.411890001 -2.72154411 two-sided
## 34 AxcR2 / AverageFruitLength_cm      r -0.004254722 -0.05040763 two-sided
## 35           AxcR1 / Fruit.large Homog.  0.384995644  1.64637176      less
## 36           AxcR2 / Fruit.large Homog.  0.464108800  2.20963518      less
## 37           AxcR1 / Fruit.small Homog.  0.515842044  2.27569208      less
## 38           AxcR2 / Fruit.small Homog.  0.534845101  2.63988352      less
## 39     AxcR1 / Consp.conspicuous Homog.  0.273692963 -1.14915964      less
## 40     AxcR2 / Consp.conspicuous Homog.  0.460961375  1.47668390      less
## 41         AxcR1 / Consp.cryptic Homog.  0.718840507  2.13546153      less
## 42         AxcR2 / Consp.cryptic Homog.  0.448132549 -0.23765943      less
##               Pvalue        Pvalue.adj  
## 1              0.834                 1  
## 2              0.239 0.939555555555556  
## 3  0.729545454545454 0.953181818181818  
## 4              0.816                 1  
## 5                  1                 1  
## 6                  1                 1  
## 7  0.729545454545454 0.953181818181818  
## 8              0.816                 1  
## 9              0.834                 1  
## 10             0.239 0.939555555555556  
## 11  0.48991935483871 0.939555555555556  
## 12             0.816                 1  
## 13              0.29 0.939555555555556  
## 14             0.435 0.939555555555556  
## 15              0.94                 1  
## 16             0.982                 1  
## 17             0.984                 1  
## 18             0.088            0.7476  
## 19             0.573 0.939555555555556  
## 20             0.672                 1  
## 21             0.976                 1  
## 22             0.089            0.7476  
## 23              0.54 0.939555555555556  
## 24             0.951                 1  
## 25               0.2 0.939555555555556  
## 26             0.577                 1  
## 27             0.198 0.939555555555556  
## 28             0.664                 1  
## 29             0.817                 1  
## 30             0.867                 1  
## 31 0.500576701268743 0.939555555555556  
## 32 0.567474048442907 0.939555555555556  
## 33             0.001             0.042 *
## 34             0.967                 1  
## 35             0.944                 1  
## 36             0.976                 1  
## 37             0.967                 1  
## 38             0.985                 1  
## 39             0.136 0.939555555555556  
## 40             0.953                 1  
## 41              0.97                 1  
## 42             0.424 0.939555555555556  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6,      typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                             Test   Stat          Obs     Std.Obs     Alter
## 1                AxcR1 / Climb.0 Homog.  0.836672753 -1.25688155      less
## 2                AxcR2 / Climb.0 Homog.  0.940072279  0.35896830      less
## 3                AxcR1 / Climb.1 Homog.  0.074800140  0.75299442      less
## 4                AxcR2 / Climb.1 Homog.  0.056918191 -0.05118715      less
## 5                AxcR1 / Acaul.0 Homog.  1.000000000        <NA>      less
## 6                AxcR2 / Acaul.0 Homog.  1.000000000        <NA>      less
## 7                AxcR1 / Erect.0 Homog.  0.074800140  0.75299442      less
## 8                AxcR2 / Erect.0 Homog.  0.056918191 -0.05118715      less
## 9                AxcR1 / Erect.1 Homog.  0.836672753 -1.25688155      less
## 10               AxcR2 / Erect.1 Homog.  0.940072279  0.35896830      less
## 11               AxcR1 / StemS.0 Homog.  0.100179857  2.12995286      less
## 12               AxcR2 / StemS.0 Homog.  0.061059378 -0.48373717      less
## 13               AxcR1 / StemS.1 Homog.  0.641005501  0.57497054      less
## 14               AxcR2 / StemS.1 Homog.  0.722324576  1.17791479      less
## 15               AxcR1 / StemS.2 Homog.  0.155320246 -0.92942985      less
## 16               AxcR2 / StemS.2 Homog.  0.193553765 -0.63288592      less
## 17               AxcR1 / StemA.0 Homog.  0.656649208  1.80265637      less
## 18               AxcR2 / StemA.0 Homog.  0.629379796  0.73860010      less
## 19               AxcR1 / StemA.1 Homog.  0.312689117  1.17801079      less
## 20               AxcR2 / StemA.1 Homog.  0.363941396  1.34293539      less
## 21               AxcR1 / Leave.0 Homog.  0.510919122 -1.69942334      less
## 22               AxcR2 / Leave.0 Homog.  0.566988117  0.85126100      less
## 23               AxcR1 / Leave.1 Homog.  0.488493502  1.01718767      less
## 24               AxcR2 / Leave.1 Homog.  0.421492370  1.17374967      less
## 25       AxcR1 / MaxStemHeight_m      r  0.088990901  0.55193677 two-sided
## 26       AxcR2 / MaxStemHeight_m      r  0.252057476  2.13834988 two-sided
## 27         AxcR1 / MaxStemDia_cm      r -0.035464815 -0.25817726 two-sided
## 28         AxcR2 / MaxStemDia_cm      r  0.258239812  2.20446456 two-sided
## 29          AxcR1 / Under.canopy Homog.  0.940406773  0.47747322      less
## 30          AxcR2 / Under.canopy Homog.  0.949032509  1.00781417      less
## 31     AxcR1 / Under.understorey Homog.  0.058403035  0.07372075      less
## 32     AxcR2 / Under.understorey Homog.  0.049026243 -0.16777458      less
## 33 AxcR1 / AverageFruitLength_cm      r -0.004633307 -0.16778394 two-sided
## 34 AxcR2 / AverageFruitLength_cm      r  0.158137536  1.37845374 two-sided
## 35           AxcR1 / Fruit.large Homog.  0.463222263  2.50854387      less
## 36           AxcR2 / Fruit.large Homog.  0.558166806  0.48794982      less
## 37           AxcR1 / Fruit.small Homog.  0.534548704  2.61819964      less
## 38           AxcR2 / Fruit.small Homog.  0.400441438 -1.69145817      less
## 39     AxcR1 / Consp.conspicuous Homog.  0.559426785  1.05934370      less
## 40     AxcR2 / Consp.conspicuous Homog.  0.506219974  0.04933554      less
## 41         AxcR1 / Consp.cryptic Homog.  0.439722847 -0.26063794      less
## 42         AxcR2 / Consp.cryptic Homog.  0.473926570 -0.05589842      less
##               Pvalue        Pvalue.adj  
## 1              0.127             0.654  
## 2              0.598             0.966  
## 3              0.791                 1  
## 4  0.793397231096912                 1  
## 5                  1                 1  
## 6                  1                 1  
## 7              0.791                 1  
## 8  0.793397231096912                 1  
## 9              0.127             0.654  
## 10             0.598             0.966  
## 11             0.974                 1  
## 12             0.495                 1  
## 13             0.681                 1  
## 14             0.881                 1  
## 15             0.218             0.654  
## 16             0.345          0.905625  
## 17             0.966                 1  
## 18              0.77                 1  
## 19             0.854                 1  
## 20             0.881                 1  
## 21             0.056            0.4704  
## 22             0.802                 1  
## 23             0.842                 1  
## 24             0.887                 1  
## 25             0.631                 1  
## 26             0.004             0.084 .
## 27             0.791                 1  
## 28             0.002             0.084 .
## 29             0.664                 1  
## 30              0.84                 1  
## 31 0.647497337593184                 1  
## 32 0.647497337593184                 1  
## 33             0.868                 1  
## 34             0.197             0.654  
## 35             0.981                 1  
## 36             0.688                 1  
## 37             0.996                 1  
## 38             0.043             0.168  
## 39             0.855                 1  
## 40             0.538                 1  
## 41              0.41 0.956666666666667  
## 42             0.483                 1  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

RLQ axes and environmental variables

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6,      typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                          Test   Stat          Obs    Std.Obs     Alter Pvalue        Pvalue.adj  
## 1        Canopy.Cover / AxcQ1      r -0.023925899 -0.1934982 two-sided  0.793 0.906285714285714  
## 2  Understory.Density / AxcQ1      r -0.046616337 -0.3474136 two-sided  0.763 0.906285714285714  
## 3         Leaf.Litter / AxcQ1      r -0.004365802 -0.0126180 two-sided  0.987             0.987  
## 4       Soil.Moisture / AxcQ1      r -0.220288874 -1.6287285 two-sided   0.11 0.377142857142857  
## 5                 Cec / AxcQ1      r -0.021245562 -0.1654269 two-sided  0.739 0.906285714285714  
## 6                 T50 / AxcQ1      r  0.050329640  0.6670247 two-sided  0.555 0.830181818181818  
## 7                 T10 / AxcQ1      r -0.314893261 -1.4962719 two-sided  0.135             0.648  
## 8       Canopy.Height / AxcQ1      r  0.080491140  0.5959590 two-sided  0.586 0.830181818181818  
## 9           Elevation / AxcQ1      r  0.074152550  0.5241494 two-sided  0.629 0.838666666666667  
## 10      Habit.Primary / AxcQ1 Homog.  0.339462103 -1.5132647      less  0.087             0.522  
## 11    Habit.Secondary / AxcQ1 Homog.  0.586665219  1.2752312      less  0.886 0.924521739130435  
## 12   Habit.Transition / AxcQ1 Homog.  0.005065871 -0.3037668      less  0.434 0.801230769230769  
## 13       Canopy.Cover / AxcQ2      r -0.077862187 -1.1990435 two-sided   0.25 0.690666666666667  
## 14 Understory.Density / AxcQ2      r -0.189627260 -1.6219673 two-sided   0.11 0.377142857142857  
## 15        Leaf.Litter / AxcQ2      r  0.155590484  1.1873636 two-sided  0.259 0.690666666666667  
## 16      Soil.Moisture / AxcQ2      r -0.067983135 -0.5704121 two-sided  0.618 0.830181818181818  
## 17                Cec / AxcQ2      r  0.052327639  0.8462091 two-sided  0.423 0.801230769230769  
## 18                T50 / AxcQ2      r  0.153959525  1.5089620 two-sided  0.176 0.474666666666667  
## 19                T10 / AxcQ2      r  0.119721332  0.5934057 two-sided  0.587 0.830181818181818  
## 20      Canopy.Height / AxcQ2      r -0.132627095 -1.0155636 two-sided   0.36 0.785454545454545  
## 21          Elevation / AxcQ2      r  0.213975341  1.4183420 two-sided  0.176 0.690666666666667  
## 22      Habit.Primary / AxcQ2 Homog.  0.548269612  1.2032756      less  0.882 0.922434782608696  
## 23    Habit.Secondary / AxcQ2 Homog.  0.448034986 -0.5104000      less  0.298            0.7152  
## 24   Habit.Transition / AxcQ2 Homog.  0.003669394 -0.7159396      less  0.203 0.690666666666667  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6,      typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                          Test   Stat          Obs     Std.Obs     Alter Pvalue        Pvalue.adj  
## 1        Canopy.Cover / AxcQ1      r -0.020525343 -0.52987608 two-sided  0.593 0.884210526315789  
## 2  Understory.Density / AxcQ1      r  0.176408140  1.90263412 two-sided  0.066            0.6384  
## 3         Leaf.Litter / AxcQ1      r -0.050385708 -0.56929404 two-sided  0.642 0.884210526315789  
## 4       Soil.Moisture / AxcQ1      r -0.201383111 -1.92812765 two-sided  0.084            0.6384  
## 5                 Cec / AxcQ1      r -0.032244658 -0.69057769 two-sided  0.552 0.884210526315789  
## 6                 T50 / AxcQ1      r  0.062841701  1.54634036 two-sided  0.133            0.6384  
## 7                 T10 / AxcQ1      r  0.104356069  1.04877602 two-sided  0.335 0.884210526315789  
## 8       Canopy.Height / AxcQ1      r -0.079818074 -0.61186294 two-sided   0.53 0.884210526315789  
## 9           Elevation / AxcQ1      r  0.292632454  1.94190843 two-sided  0.061            0.6384  
## 10      Habit.Primary / AxcQ1 Homog.  0.616404905  3.82920806      less      1                 1  
## 11    Habit.Secondary / AxcQ1 Homog.  0.351213487  0.06348844      less  0.453 0.884210526315789  
## 12   Habit.Transition / AxcQ1 Homog.  0.020031880  1.01380927      less   0.89 0.970909090909091  
## 13       Canopy.Cover / AxcQ2      r -0.059842511 -1.41144181 two-sided  0.177 0.685714285714286  
## 14 Understory.Density / AxcQ2      r -0.043046543 -0.55372181 two-sided  0.589 0.884210526315789  
## 15        Leaf.Litter / AxcQ2      r  0.116980880  1.34077455 two-sided    0.2 0.685714285714286  
## 16      Soil.Moisture / AxcQ2      r -0.059469654 -0.50494174 two-sided  0.671 0.884210526315789  
## 17                Cec / AxcQ2      r  0.003349974  0.07791062 two-sided  0.949                 1  
## 18                T50 / AxcQ2      r -0.015681784 -0.42301126 two-sided    0.7 0.884210526315789  
## 19                T10 / AxcQ2      r  0.114251067  0.99929615 two-sided  0.404 0.884210526315789  
## 20      Canopy.Height / AxcQ2      r  0.185686323  1.51680403 two-sided  0.122            0.6384  
## 21          Elevation / AxcQ2      r  0.006309089  0.11471122 two-sided  0.901                 1  
## 22      Habit.Primary / AxcQ2 Homog.  0.671935150  7.51254013      less      1                 1  
## 23    Habit.Secondary / AxcQ2 Homog.  0.315497275 -0.70813760      less  0.244             0.732  
## 24   Habit.Transition / AxcQ2 Homog.  0.011255924  0.97553325      less  0.842 0.962285714285714  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Results can be represented using a table with colors indicating significance :

## [1] "juveniles"

## [1] "adults"

Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)

## [1] "juveniles"

## [1] "adults"

RLQ/4th corner run 3 : Checking to see which environmental variables may be removed and “endemism” as a trait

 p_traits$Endemic<-as.factor(palm_list$Endemic)
# splom(p_envFORCOVER)
res1 <- corrplot::cor.mtest(p_envFORCOVER[,1:9], conf.level = 0.95)
corrplot::corrplot(cor(p_envFORCOVER[,1:9]),p.mat = res1$p,type = "upper")

corrplot::corrplot(cor(p_envFORCOVER[,1:9]), p.mat = res1$p, insig = "p-value")

corrplot::corrplot(cor(p_envFORCOVER[,1:9]), p.mat = res1$p, insig = "blank")

corrplot::corrplot(cor(p_envFORCOVER[,1:9]), p.mat = res1$p, insig = "pch",pch= 1)

library("PerformanceAnalytics")
## Loading required package: xts
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## 
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
## 
##     first, last
## 
## Attaching package: 'PerformanceAnalytics'
## The following object is masked from 'package:graphics':
## 
##     legend
chart.Correlation(p_envFORCOVER[,1:9], histogram=TRUE, pch=19)

tempdf<-NULL
tempdf$a<-seq(1,2,.1)
tempdf$b<-seq(2,3,.1)
tempdf<-as.data.frame(tempdf)
rownames(tempdf)<-LETTERS[1:11]
tempL <- dudi.coa(tempdf, scannf = FALSE)

RLQ/4th corner run 4 : Including Luke’s data and broken down by age

Run RLQ/ FQ analysis for all lifestage types COMBINED DATA

That’s unreadable, plotting as separate.

## [1] "RLQ for juveniles"

## [1] "RLQ for adults"

Summary of RLQ analysis. How to interpret this?

## RLQ analysis
## 
## Class: rlq dudi
## Call: rlq(dudiR = Rjuv, dudiL = Ljuv, dudiQ = Qjuv, scannf = FALSE)
## 
## Total inertia: 0.4674
## 
## Eigenvalues:
##      Ax1      Ax2      Ax3      Ax4      Ax5 
## 0.301697 0.091827 0.060581 0.011275 0.001581 
## 
## Projected inertia (%):
##     Ax1     Ax2     Ax3     Ax4     Ax5 
## 64.5440 19.6452 12.9604  2.4121  0.3382 
## 
## Cumulative projected inertia (%):
##     Ax1   Ax1:2   Ax1:3   Ax1:4   Ax1:5 
##   64.54   84.19   97.15   99.56   99.90 
## 
## (Only 5 dimensions (out of 7) are shown)
## 
## 
## Eigenvalues decomposition:
##         eig     covar      sdR      sdQ      corr
## 1 0.3016970 0.5492695 1.051910 1.525115 0.3423768
## 2 0.0918274 0.3030304 1.012602 1.637065 0.1828023
## 
## Inertia & coinertia R (Rjuv):
##     inertia      max     ratio
## 1  1.106514 1.337773 0.8271320
## 12 2.131877 2.562976 0.8317977
## 
## Inertia & coinertia Q (Qjuv):
##     inertia      max     ratio
## 1  2.325976 3.708939 0.6271271
## 12 5.005957 6.934943 0.7218454
## 
## Correlation L (Ljuv):
##        corr       max     ratio
## 1 0.3423768 0.8781144 0.3899000
## 2 0.1828023 0.8370330 0.2183931
## RLQ analysis
## 
## Class: rlq dudi
## Call: rlq(dudiR = Radu, dudiL = Ladu, dudiQ = Qadu, scannf = FALSE)
## 
## Total inertia: 0.3211
## 
## Eigenvalues:
##      Ax1      Ax2      Ax3      Ax4      Ax5 
## 0.189211 0.082500 0.040937 0.005584 0.002079 
## 
## Projected inertia (%):
##     Ax1     Ax2     Ax3     Ax4     Ax5 
## 58.9177 25.6894 12.7472  1.7387  0.6473 
## 
## Cumulative projected inertia (%):
##     Ax1   Ax1:2   Ax1:3   Ax1:4   Ax1:5 
##   58.92   84.61   97.35   99.09   99.74 
## 
## (Only 5 dimensions (out of 7) are shown)
## 
## 
## Eigenvalues decomposition:
##          eig     covar      sdR      sdQ      corr
## 1 0.18921104 0.4349840 1.065530 1.934510 0.2110263
## 2 0.08250008 0.2872283 1.034332 1.399049 0.1984881
## 
## Inertia & coinertia R (Radu):
##     inertia      max     ratio
## 1  1.135354 1.366001 0.8311512
## 12 2.205196 2.525155 0.8732914
## 
## Inertia & coinertia Q (Qadu):
##     inertia      max     ratio
## 1  3.742330 4.077184 0.9178713
## 12 5.699667 7.312295 0.7794636
## 
## Correlation L (Ladu):
##        corr       max     ratio
## 1 0.2110263 1.0000000 0.2110263
## 2 0.1984881 0.9480088 0.2093737

Fourth-corner analysis

## [1] "FQ for juveniles"

## [1] "FQ for adults"

With adjusted p-values

## [1] "FQ for Juveniles"
## [1] "FQ for Adults"

Combine both approaches

## class: krandtest lightkrandtest 
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6)
## 
## Number of tests:   2 
## 
## Adjustment method for multiple comparisons:   none 
## Permutation number:   999 
##      Test       Obs    Std.Obs   Alter Pvalue
## 1 Model 2 0.4674284 12.6063583 greater  0.001
## 2 Model 4 0.4674284  0.1726624 greater  0.411

## class: krandtest lightkrandtest 
## Monte-Carlo tests
## Call: randtest.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6)
## 
## Number of tests:   2 
## 
## Adjustment method for multiple comparisons:   none 
## Permutation number:   999 
##      Test       Obs   Std.Obs   Alter Pvalue
## 1 Model 2 0.3211446 12.257439 greater  0.001
## 2 Model 4 0.3211446  1.406965 greater  0.089

The total inertia of RLQ analysis is equal to the SRLQ multivariate statistic defined in Dray and Legendre (2008). This statistic is returned by the fourthcorner2 function:

## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envCombined, tabL = JuvCombined, tabQ = p_traits2, 
##     modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
## 
## Observation: 0.4674284 
## 
## Based on 964 replicates
## Simulated p-value: 0.4248705 
## Alternative hypothesis: greater 
## 
##     Std.Obs Expectation    Variance 
##  0.10432746  0.45282485  0.01959388
## Monte-Carlo test
## Call: fourthcorner2(tabR = p_envCombined, tabL = AduCombined, tabQ = p_traits2, 
##     modeltype = 6, nrepet = nrepet, p.adjust.method.G = "fdr")
## 
## Observation: 0.3211446 
## 
## Based on 999 replicates
## Simulated p-value: 0.081 
## Alternative hypothesis: greater 
## 
##       Std.Obs   Expectation      Variance 
##  5.358191e-01 -2.229758e+03  1.732224e+07
## [1] "juvenile"

## [1] "adult"

“Another approach is provided by the fourthcorner.rlq function and consists in testing directly the links between RLQ axes and traits (typetest=”Q.axes“) or environmental variables (typetest=”R.axes“).”

RLQ axes and traits

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6,      typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                             Test   Stat          Obs       Std.Obs     Alter
## 1                AxcR1 / Climb.0 Homog.  0.946145397 -0.1148769406      less
## 2                AxcR2 / Climb.0 Homog.  0.940807546 -0.2188758822      less
## 3                AxcR1 / Climb.1 Homog.  0.035379710 -0.0001350046      less
## 4                AxcR2 / Climb.1 Homog.  0.054673254  2.5680181367      less
## 5                AxcR1 / Erect.0 Homog.  0.035379710 -0.0001350046      less
## 6                AxcR2 / Erect.0 Homog.  0.054673254  2.5680181367      less
## 7                AxcR1 / Erect.1 Homog.  0.946145397 -0.1148769406      less
## 8                AxcR2 / Erect.1 Homog.  0.940807546 -0.2188758822      less
## 9                AxcR1 / StemS.0 Homog.  0.044847899 -0.5084881264      less
## 10               AxcR2 / StemS.0 Homog.  0.066274156  2.6992848414      less
## 11               AxcR1 / StemS.1 Homog.  0.589189574 -0.0320202125      less
## 12               AxcR2 / StemS.1 Homog.  0.644852815  0.4176655015      less
## 13               AxcR1 / StemS.2 Homog.  0.343604259  2.3998440777      less
## 14               AxcR2 / StemS.2 Homog.  0.282942966 -0.0062283808      less
## 15               AxcR1 / StemA.0 Homog.  0.398808649  0.0198219125      less
## 16               AxcR2 / StemA.0 Homog.  0.392997578 -0.2941239148      less
## 17               AxcR1 / StemA.1 Homog.  0.588439989  3.5971606031      less
## 18               AxcR2 / StemA.1 Homog.  0.604662262  3.8964772243      less
## 19               AxcR1 / Leave.0 Homog.  0.334228597 -1.4101424971      less
## 20               AxcR2 / Leave.0 Homog.  0.335114659 -0.9955816095      less
## 21               AxcR1 / Leave.1 Homog.  0.635973410  3.3365209738      less
## 22               AxcR2 / Leave.1 Homog.  0.664436879  3.7276337910      less
## 23       AxcR1 / MaxStemHeight_m      r -0.080433938 -0.5478686565 two-sided
## 24       AxcR2 / MaxStemHeight_m      r  0.039361366  0.2473651968 two-sided
## 25         AxcR1 / MaxStemDia_cm      r -0.112931548 -0.7612163489 two-sided
## 26         AxcR2 / MaxStemDia_cm      r  0.068668620  0.4499817769 two-sided
## 27          AxcR1 / Under.canopy Homog.  0.820160891 -0.3101557672      less
## 28          AxcR2 / Under.canopy Homog.  0.819952984 -0.3297687297      less
## 29     AxcR1 / Under.understorey Homog.  0.135449176  0.0769366698      less
## 30     AxcR2 / Under.understorey Homog.  0.178965762  0.6065798799      less
## 31 AxcR1 / AverageFruitLength_cm      r -0.004404488 -0.1193815472 two-sided
## 32 AxcR2 / AverageFruitLength_cm      r  0.153893411  1.0561546906 two-sided
## 33           AxcR1 / Fruit.large Homog.  0.171486845 -0.0999686257      less
## 34           AxcR2 / Fruit.large Homog.  0.223675676  0.4463623804      less
## 35           AxcR1 / Fruit.small Homog.  0.818439303  3.7127044108      less
## 36           AxcR2 / Fruit.small Homog.  0.739755535 -0.5707837084      less
## 37     AxcR1 / Consp.conspicuous Homog.  0.672679178  1.4584625241      less
## 38     AxcR2 / Consp.conspicuous Homog.  0.699889570  1.7289856579      less
## 39         AxcR1 / Consp.cryptic Homog.  0.309786182  0.3596761545      less
## 40         AxcR2 / Consp.cryptic Homog.  0.298859343 -0.3235210338      less
## 41               AxcR1 / Endem.N Homog.  0.723831110 -0.1244633410      less
## 42               AxcR2 / Endem.N Homog.  0.744686414  0.0504341665      less
## 43               AxcR1 / Endem.Y Homog.  0.196611974 -0.3507231609      less
## 44               AxcR2 / Endem.Y Homog.  0.252363669  0.1557678499      less
##               Pvalue        Pvalue.adj  
## 1              0.341 0.937894736842105  
## 2              0.341 0.937894736842105  
## 3  0.710526315789474 0.937894736842105  
## 4              0.992                 1  
## 5  0.710526315789474 0.937894736842105  
## 6              0.992                 1  
## 7              0.341 0.937894736842105  
## 8              0.341 0.937894736842105  
## 9              0.403 0.937894736842105  
## 10             0.995                 1  
## 11             0.489 0.937894736842105  
## 12              0.63 0.937894736842105  
## 13             0.986                 1  
## 14              0.55 0.937894736842105  
## 15              0.53             0.748  
## 16             0.411            0.6028  
## 17             0.999                 1  
## 18                 1                 1  
## 19             0.063           0.17325  
## 20             0.149            0.3278  
## 21             0.999                 1  
## 22                 1                 1  
## 23             0.604 0.937894736842105  
## 24             0.822 0.977513513513514  
## 25             0.488 0.937894736842105  
## 26             0.673 0.937894736842105  
## 27               0.3 0.937894736842105  
## 28             0.307 0.937894736842105  
## 29             0.629 0.937894736842105  
## 30             0.742 0.937894736842105  
## 31             0.924                 1  
## 32             0.321 0.937894736842105  
## 33             0.532 0.937894736842105  
## 34             0.706 0.937894736842105  
## 35                 1                 1  
## 36             0.265 0.937894736842105  
## 37             0.906                 1  
## 38             0.953                 1  
## 39             0.662             0.792  
## 40             0.403            0.6028  
## 41             0.415 0.937894736842105  
## 42             0.483 0.937894736842105  
## 43              0.41 0.937894736842105  
## 44             0.622 0.937894736842105  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6,      typetest = "Q.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                             Test   Stat         Obs     Std.Obs     Alter
## 1                AxcR1 / Climb.0 Homog.  0.97259607  1.05259014      less
## 2                AxcR2 / Climb.0 Homog.  0.97165454  1.33271608      less
## 3                AxcR1 / Climb.1 Homog.  0.02470440 -0.39892130      less
## 4                AxcR2 / Climb.1 Homog.  0.01501959 -0.52767497      less
## 5                AxcR1 / Erect.0 Homog.  0.02470440 -0.39892130      less
## 6                AxcR2 / Erect.0 Homog.  0.01501959 -0.52767497      less
## 7                AxcR1 / Erect.1 Homog.  0.97259607  1.05259014      less
## 8                AxcR2 / Erect.1 Homog.  0.97165454  1.33271608      less
## 9                AxcR1 / StemS.0 Homog.  0.04667853 -0.49876184      less
## 10               AxcR2 / StemS.0 Homog.  0.05169585 -0.46197099      less
## 11               AxcR1 / StemS.1 Homog.  0.47155887 -0.69864193      less
## 12               AxcR2 / StemS.1 Homog.  0.49723513  1.18821659      less
## 13               AxcR1 / StemS.2 Homog.  0.46836829  1.02477170      less
## 14               AxcR2 / StemS.2 Homog.  0.44356541  0.89498925      less
## 15               AxcR1 / StemA.0 Homog.  0.22071648 -0.86952242      less
## 16               AxcR2 / StemA.0 Homog.  0.29011952  3.92693411      less
## 17               AxcR1 / StemA.1 Homog.  0.77899451  0.89547673      less
## 18               AxcR2 / StemA.1 Homog.  0.70234050  3.08040359      less
## 19               AxcR1 / Leave.0 Homog.  0.19360106 -0.48539909      less
## 20               AxcR2 / Leave.0 Homog.  0.25134070  3.79134637      less
## 21               AxcR1 / Leave.1 Homog.  0.80636636  3.12826558      less
## 22               AxcR2 / Leave.1 Homog.  0.72776100  2.70909475      less
## 23       AxcR1 / MaxStemHeight_m      r -0.12121085 -1.57395545 two-sided
## 24       AxcR2 / MaxStemHeight_m      r -0.01899858 -0.21960944 two-sided
## 25         AxcR1 / MaxStemDia_cm      r -0.16488303 -2.11750697 two-sided
## 26         AxcR2 / MaxStemDia_cm      r -0.02835505 -0.29717803 two-sided
## 27          AxcR1 / Under.canopy Homog.  0.83895336  0.13484039      less
## 28          AxcR2 / Under.canopy Homog.  0.85721283  1.70162864      less
## 29     AxcR1 / Under.understorey Homog.  0.15383819  0.06609911      less
## 30     AxcR2 / Under.understorey Homog.  0.14161148 -0.03171161      less
## 31 AxcR1 / AverageFruitLength_cm      r -0.20947256 -2.85188139 two-sided
## 32 AxcR2 / AverageFruitLength_cm      r  0.04353332  0.68184107 two-sided
## 33           AxcR1 / Fruit.large Homog.  0.21008433  0.15700105      less
## 34           AxcR2 / Fruit.large Homog.  0.21210459  0.17367805      less
## 35           AxcR1 / Fruit.small Homog.  0.75223526 -0.39479067      less
## 36           AxcR2 / Fruit.small Homog.  0.78287009  1.14225600      less
## 37     AxcR1 / Consp.conspicuous Homog.  0.75503793  1.45994770      less
## 38     AxcR2 / Consp.conspicuous Homog.  0.73845820  1.40003774      less
## 39         AxcR1 / Consp.cryptic Homog.  0.23515304 -0.26402736      less
## 40         AxcR2 / Consp.cryptic Homog.  0.26066079  1.31317780      less
## 41               AxcR1 / Endem.N Homog.  0.83697797  0.54300255      less
## 42               AxcR2 / Endem.N Homog.  0.85577732  1.92199173      less
## 43               AxcR1 / Endem.Y Homog.  0.15593828 -0.55394110      less
## 44               AxcR2 / Endem.Y Homog.  0.13984418 -0.67537315      less
##               Pvalue        Pvalue.adj  
## 1              0.865                 1  
## 2              0.913                 1  
## 3  0.489308176100629 0.797391101793617  
## 4  0.306918238993711           0.79376  
## 5  0.489308176100629 0.797391101793617  
## 6  0.306918238993711           0.79376  
## 7              0.865                 1  
## 8              0.913                 1  
## 9   0.39460020768432           0.79376  
## 10 0.423676012461059           0.79376  
## 11             0.296           0.79376  
## 12             0.885                 1  
## 13             0.785 0.933513513513514  
## 14             0.757 0.933513513513514  
## 15             0.196            0.4312  
## 16                 1                 1  
## 17              0.81                 1  
## 18                 1                 1  
## 19             0.321 0.614086956521739  
## 20                 1                 1  
## 21                 1                 1  
## 22             0.998                 1  
## 23             0.132 0.645333333333333  
## 24             0.819 0.948315789473684  
## 25             0.031 0.227333333333333  
## 26              0.78 0.933513513513514  
## 27              0.53 0.804137931034483  
## 28             0.959                 1  
## 29              0.67 0.910666666666667  
## 30             0.619 0.910666666666667  
## 31             0.002            0.0176 *
## 32             0.511             0.803  
## 33             0.683 0.910666666666667  
## 34             0.677 0.910666666666667  
## 35              0.25           0.79376  
## 36              0.87                 1  
## 37             0.938                 1  
## 38             0.924                 1  
## 39             0.422  0.70237037037037  
## 40             0.903                 1  
## 41             0.625 0.910666666666667  
## 42             0.976                 1  
## 43              0.37           0.79376  
## 44              0.31           0.79376  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

RLQ axes and environmental variables

## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.juv, nrepet = nrepet, modeltype = 6,      typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                     Test   Stat           Obs     Std.Obs     Alter Pvalue        Pvalue.adj  
## 1    Under.dense / AxcQ1 Homog.  0.2247021780  0.52971405      less  0.766 0.942769230769231  
## 2      Under.low / AxcQ1 Homog.  0.2145745846 -1.07125766      less  0.136 0.362666666666667  
## 3   Under.medium / AxcQ1 Homog.  0.5505971813  1.39236372      less  0.928             0.942  
## 4            Cec / AxcQ1      r  0.0447036128  1.89196227 two-sided   0.06            0.3136  
## 5            T50 / AxcQ1      r -0.0004649455  0.05524814 two-sided  0.959             0.959  
## 6            T10 / AxcQ1      r -0.0260585160 -0.63893141 two-sided  0.565 0.753333333333333  
## 7  Canopy.Height / AxcQ1      r -0.0501237029 -0.72441670 two-sided  0.504 0.733090909090909  
## 8      Elevation / AxcQ1      r  0.3382182307  2.19041707 two-sided  0.009             0.104  
## 9    Under.dense / AxcQ2 Homog.  0.2563418102  1.74515940      less  0.952             0.959  
## 10     Under.low / AxcQ2 Homog.  0.2329955848 -0.50363235      less  0.302             0.604  
## 11  Under.medium / AxcQ2 Homog.  0.5030093046 -0.18546981      less  0.474 0.637333333333333  
## 12           Cec / AxcQ2      r -0.0402389406 -1.29402026 two-sided  0.131 0.347428571428571  
## 13           T50 / AxcQ2      r -0.0246763342 -0.64930183 two-sided  0.441 0.637333333333333  
## 14           T10 / AxcQ2      r  0.0320531552  0.93777412 two-sided  0.384 0.682666666666667  
## 15 Canopy.Height / AxcQ2      r  0.1494572496  2.09771471 two-sided  0.013             0.104  
## 16     Elevation / AxcQ2      r  0.0319051607  0.22578238 two-sided  0.848             0.959  
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Fourth-corner Statistics
## ------------------------
## Permutation method  Comb. 2 and 4  ( 999  permutations)
## 
## Adjustment method for multiple comparisons:   fdr 
## call:  fourthcorner.rlq(xtest = rlq.adu, nrepet = nrepet, modeltype = 6,      typetest = "R.axes", p.adjust.method.G = "fdr", p.adjust.method.D = "fdr") 
## 
## ---
## 
##                     Test   Stat           Obs      Std.Obs     Alter Pvalue         Pvalue.adj  
## 1    Under.dense / AxcQ1 Homog.  0.2149556616  0.004439614      less  0.527  0.766545454545455  
## 2      Under.low / AxcQ1 Homog.  0.3099417544  1.452916339      less  0.927             0.9888  
## 3   Under.medium / AxcQ1 Homog.  0.4730200003 -1.479031165      less  0.066              0.264  
## 4            Cec / AxcQ1      r  0.0300820109  1.142201262 two-sided  0.251  0.446222222222222  
## 5            T50 / AxcQ1      r -0.0101771698 -0.278591113 two-sided  0.825              0.967  
## 6            T10 / AxcQ1      r -0.1309384581 -2.053698708 two-sided  0.011 0.0853333333333333 .
## 7  Canopy.Height / AxcQ1      r -0.1505954246 -1.933751571 two-sided  0.016 0.0853333333333333 .
## 8      Elevation / AxcQ1      r  0.0874342319  1.154647542 two-sided  0.255               0.51  
## 9    Under.dense / AxcQ2 Homog.  0.2559389973  1.164855997      less   0.88             0.9888  
## 10     Under.low / AxcQ2 Homog.  0.2337497338 -0.699499797      less  0.237               0.51  
## 11  Under.medium / AxcQ2 Homog.  0.5087809384 -0.015928990      less  0.492  0.766545454545455  
## 12           Cec / AxcQ2      r  0.0002212089  0.008726186 two-sided  0.994              0.994  
## 13           T50 / AxcQ2      r -0.0156254783 -0.507891312 two-sided  0.612              0.816  
## 14           T10 / AxcQ2      r  0.0530492759  0.907636996 two-sided  0.404             0.6464  
## 15 Canopy.Height / AxcQ2      r  0.0706682094  1.024358412 two-sided  0.328  0.583111111111111  
## 16     Elevation / AxcQ2      r  0.1804615643  2.785023345 two-sided  0.004              0.064 .
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Results can be represented using a table with colors indicating significance :

## [1] "juveniles"
## [1] "adults"

Significance with axes can also be reported on the factorial map of RLQ analysis. Here, significant associations with the first axis are represented in blue, with the second axis in orange, with both axes in green (variables with no significant association are in black)

## [1] "juveniles"

## [1] "adults"